#if !GENERATOR

using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
using System.Collections.Generic;

using YF.OneNote;


namespace YF.OneNote.DataTypes
{
  public partial class OE: NotesNode
  {
  
	public OE()
    {
      
	}

    

	[XmlAttribute]
    public override string ID
    {
      get
      {
        return "!!!No ID!!!";
      }
      set
      {
      }
    }

	
    protected override bool UpdateContents(NotesNode newContent, List<INotesChange> changes)
    {
	  OE item = (OE)newContent;
      bool changed = false;

      
      if (alignment != item.alignment)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = alignmentField;
        propertyChange.NewValue = item.alignmentField;
        propertyChange.PropertyName = "alignment";
        changes.Add(propertyChange);

		
        alignmentField = item.alignmentField;
      }

      if (author != item.author)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = authorField;
        propertyChange.NewValue = item.authorField;
        propertyChange.PropertyName = "author";
        changes.Add(propertyChange);

		
        authorField = item.authorField;
      }

      if (bodyText != item.bodyText)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = bodyTextField;
        propertyChange.NewValue = item.bodyTextField;
        propertyChange.PropertyName = "bodyText";
        changes.Add(propertyChange);

		
        bodyTextField = item.bodyTextField;
      }

      if (collapsed != item.collapsed)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = collapsedField;
        propertyChange.NewValue = item.collapsedField;
        propertyChange.PropertyName = "collapsed";
        changes.Add(propertyChange);

		
        collapsedField = item.collapsedField;
      }

      if (collapsedBodyText != item.collapsedBodyText)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = collapsedBodyTextField;
        propertyChange.NewValue = item.collapsedBodyTextField;
        propertyChange.PropertyName = "collapsedBodyText";
        changes.Add(propertyChange);

		
        collapsedBodyTextField = item.collapsedBodyTextField;
      }

      if (creationTime != item.creationTime)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = creationTimeField;
        propertyChange.NewValue = item.creationTimeField;
        propertyChange.PropertyName = "creationTime";
        changes.Add(propertyChange);

		
        creationTimeField = item.creationTimeField;
      }

      if (lang != item.lang)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = langField;
        propertyChange.NewValue = item.langField;
        propertyChange.PropertyName = "lang";
        changes.Add(propertyChange);

		
        langField = item.langField;
      }

      if (lastModifiedBy != item.lastModifiedBy)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = lastModifiedByField;
        propertyChange.NewValue = item.lastModifiedByField;
        propertyChange.PropertyName = "lastModifiedBy";
        changes.Add(propertyChange);

		
        lastModifiedByField = item.lastModifiedByField;
      }

      if (lastModifiedTime != item.lastModifiedTime)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = lastModifiedTimeField;
        propertyChange.NewValue = item.lastModifiedTimeField;
        propertyChange.PropertyName = "lastModifiedTime";
        changes.Add(propertyChange);

		
        lastModifiedTimeField = item.lastModifiedTimeField;
      }

      if (objectID != item.objectID)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = objectIDField;
        propertyChange.NewValue = item.objectIDField;
        propertyChange.PropertyName = "objectID";
        changes.Add(propertyChange);

		
        objectIDField = item.objectIDField;
      }

      if (selected != item.selected)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = selectedField;
        propertyChange.NewValue = item.selectedField;
        propertyChange.PropertyName = "selected";
        changes.Add(propertyChange);

		
        selectedField = item.selectedField;
      }

      if (style != item.style)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = styleField;
        propertyChange.NewValue = item.styleField;
        propertyChange.PropertyName = "style";
        changes.Add(propertyChange);

		
        styleField = item.styleField;
      }


      return changed;
    }
  }
}

#endif